Geometrical transformation identifying system

ABSTRACT

A geometrical correction system and method comprising creation of at least one pattern consisting of asymmetric two dimensional waves, embedding at least one pattern consisting of asymmetric two dimensional waves in a real domain, and calculation of at least one geometrical transformation applied by way of extraction of the embedded two dimensional waves. Said creation of at least one pattern consisting of asymmetric two dimensional waves means to calculate a two dimensional wave parameter set for creating at least one pattern adapted for use in the geometrical correction system of this invention. Also, said embedding of at least one pattern consisting of asymmetric two dimensional waves in a real domain means to add the pattern to an original image. Further, said calculation of at least one geometrical transformation applied by way of extraction of the embedded two dimensional waves means to calculate parameters of the embedded two dimensional waves from the image that is subjected to at least one geometrical transformation, to compare these parameters with the two dimensional wave parameter set of the embedded pattern, thereby to identify the geometrical transformation applied to the embedded image.

FIELD OF THE INVENTION

This invention relates to a method and a system for accuratelyidentifying at least one geometrical transformation applied to an imagethat has two dimensional waves embedded therein, whenever such an imagehas been subjected to the geometrically transformation.

BACKGROUND OF THE INVENTION

It is already known in the art that rotation of a space causesdistribution of a frequency domain (Fourier Transformed Space) to berotated as well. While E. De Castro and C. Morandi (IEEE Trans. PatternAnalysis and Machine Intelligence, Vol. PAMI-9, No. 5, pp. 700-703,1987) apply this principle to geometrical correction (geometricalregistration) of a rotated image, nevertheless they do not propose orsuggest intentionally embedding two dimensional waves. Rather, they usea method of repetitively searching for a rotational angle that willmaximize a correlation in a frequency domain between an original imageand a rotated image. Thus, this method inevitably requires use of anoriginal image for the purpose of determining any linear transformationsapplied thereto.

U.S. Pat. No. 5,636,292, entitled “Steganography Methods EmployingEmbedded Calibration Data”, discloses a digital watermarking method forembedding a multi-bit identifying function in a two dimensional patternitself. In this patented invention, information signals, to be embeddedas digital watermarks, and other information signals, to be used fordiscerning any deformation applied to an image, are integrated together;and, in the case of embedding a pattern consisting of a plurality of twodimensional waves, the embedding pattern is rendered to have at leastone axis of symmetry. However, with such symmetry, a lineartransformation at the time of pattern extraction has a plurality ofsolutions and, thus, there is no way to completely identify thegeometrical transformation. Further, this patented invention uses amethod steps of: transforming an image that has a two dimensional wavepattern embedded therein to another space (frequency domain); filtering;and, returning the same to a real domain again. However, in accordancewith such a method, it is difficult to control invisibility and/ordegradation of image quality. Digital watermarks embedded in an imagefor copyright protection require countermeasures against anymanipulations for removing them. Such manipulations for removing digitalwatermarks include geometrical transformations such as clipping,rotation, scaling, anisotropic scaling, and the like. However, to thebest of our knowledge, the prior art fails to provide a single means forrapidly and accurately identifying geometrical transformations appliedto an image, which contains these digital watermarks therein, andcorrecting the same.

Moreover, where a manufacturing process requires accurate positioncontrol of a manufacture piece, the prior art fails to provide any meansfor allowing additional position control to be performed whenever themanufacture piece is geometrically deformed due to any changes in anexternal environment.

Accordingly, it is an object of this invention to provide a method andsystem that are capable of easily and rapidly identifying at least onegeometrical transformation applied to an image in a accurate mannerwithout using its original image.

Also, it is another object of this invention to provide a method andsystem for embedding two dimensional waves in an image, thereby toeasily control invisibility and/or degradation of image quality.

Also, it is another object of this invention to provide a method andsystem that are capable of accurately and rapidly identifying at leastone geometrical transformation applied to an image that contains digitalwatermarks therein.

Also, it is another object of this invention to provide a method andsystem that are capable of accurately and rapidly detecting at least onegeometrical transformation applied to an original image even where adigital watermarking image is subjected to clipping, rotation, scaling,anisotropic scaling, or the like.

Further, it is yet another object of this invention to provide a methodand system for reading at least one geometrical transformation appliedto a manufacture piece, which requires accurate position control, andperforming appropriate position control of the manufacture piece.

SUMMARY OF THE INVENTION

These and other objects are realized by the a geometrical correctionsystem of this invention which comprises creation of at least onepattern consisting of asymmetric two dimensional waves, embedding atleast one pattern consisting of asymmetric two dimensional waves in areal domain, and calculation of at least one geometrical transformationapplied by way of extraction of the embedded two dimensional waves.Firstly, said creation of At least one pattern consisting of asymmetrictwo dimensional waves means to calculate a two dimensional waveparameter set for creating at least one pattern adapted for use in thegeometrical correction system of this invention. Secondly, saidembedding of at least one pattern consisting of asymmetric twodimensional waves in a real domain means to add the pattern to anoriginal image. Finally, said calculation of at least one geometricaltransformation applied by way of extraction of the embedded twodimensional waves means to calculate parameters of the embedded twodimensional waves from the image that is subjected to at least onegeometrical transformation, to compare these parameters with the twodimensional wave parameter set of the embedded pattern, thereby toidentify the geometrical transformation applied to the embedded image.

Also, this invention comprises a digital watermarking system that makesuse of the foregoing method and system in a way to improve robustness toa geometrical transformation. More particularly, this inventioncomprises a method and a system for intentionally embedding a number oftwo dimensional waves in an image, whereby at least one geometricaltransformation applied to the image may be rapidly and accuratelyidentified through calculations of such information about how magnitudesof periods and directions of the embedded two dimensional waves havebeen transformed. According to this invention, this is accomplishedwithout requiring use of an original image that is free of the embeddedtwo dimensional waves.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be described in greater detail with specificreference to the appended drawings wherein:

FIG. 1 is a diagram of a geometrical correction system in accordancewith embedding of a two dimensional wave pattern;

FIG. 2 is a diagram showing an application of the geometrical correctionsystem to digital watermarking;

FIG. 3 is a showing an application of the geometrical correction systemto orientation control of a printed material;

FIG. 4 is a diagram showing creation of a pattern consisting of twodimensional waves;

FIG. 5 is a diagram showing a global random distribution creatingmethod;

FIG. 6 is a diagram showing a cellular random distribution creatingmethod;

FIG. 7 is a diagram showing a spiral random distribution creatingmethod;

FIG. 8 is a diagram showing a presentation example in a real domain,which is created by the cellular random distribution creating method;

FIG. 9 is a diagram showing an exemplary DFT image, which is created bythe cellular random distribution creating method;

FIG. 10 is a diagram showing rotation in a DFT image of a twodimensional wave pattern, which occurs in connection with rotation of animage;

FIG. 11 is a diagram showing an exemplary DFT image, which is created bythe spiral random distribution creating method;

FIG. 12 is a diagram showing a procedure for embedding a two dimensionalwave pattern;

FIG. 13 is a diagram showing a procedure for extracting geometricalcorrection information from a two dimensional wave pattern;

FIG. 14 is a diagram showing a DFT image of an image, which has a twodimensional wave pattern embedded therein;

FIG. 15 is a diagram showing a procedure for extracting frequencyvectors from an image;

FIG. 16 is a diagram showing a procedure, part 1, for creating acorrespondence between an embedded frequency vector and an extractedfrequency vector;

FIG. 17 is a diagram showing a procedure, part 2, for creating acorrespondence between an embedded frequency vector and an extractedfrequency vector; and

FIG. 18 is a diagram showing a hardware embodiment for use in performingembedding of two dimensional waves, geometrical transformationidentification of an image, digital watermarking, geometricalcorrection, and position control.

DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 shows a block diagram of the geometrical correction system inaccordance with this invention. At step 130, asymmetric two dimensionalwaves, which are created and stored at step 110, are embedded in anoriginal image 120 in a real domain. When an embedded image 140 createdin such a manner is geometrically transformed due to some factors, itturns into a transformed image 150. Note here that such factorsintroduce artificially initiated geometrical transformations,geometrical transformations mechanically initiated by a scanner or a FAXmachine, and the like. At block 160, after two dimensional wavesembedded in the image are extracted, they are compared withpredetermined two dimensional waves, and based on a result of thiscomparison, the system calculates at least one linear coordinatetransformation, including a scaling factor, a rotational angle, aninversion, an anisotropic scaling factor, and/or a paralleltranslation's amount, which has been applied to the image. The foregoingprocess up to this point is sufficient for identifying the geometricaltransformation which had been applied to the image. In order toadditionally perform geometrical correction, however, the identifiedgeometrical transformation is further used for performing geometricalcorrection (inverse transformation), thereby to create geometricaltransformation data 170.

A method of intentionally embedding and extracting asymmetric twodimensional waves makes it possible to easily and rapidly identify atleast one geometrical transformation which had been applied to an imagein a accurate manner without using its original image. Also, since suchembedding is performed in a real domain, it becomes easier to controlinvisibility and/or degradation of image quality. Further, since thismethod functions independently of digital watermarking, it becomespossible to accurately and rapidly detect at least one geometricaltransformation which had been applied to an original image even wherethe image that contains digital watermarks therein is subjected toclipping, rotation, scaling, anisotropic scaling, and the like.

Basic Principles

Letting a coordinate of an image be u=(x, y), a pattern consisting of anumber of two dimensional waves is defined by the following equation.

P(u)=Σ_(m) r _(m) exp(2πi(w _(m) _(^(T)) u+q _(m)))  (1)

Here, x and y of each pixel point are assumed to be on integer values.Also, w_(m)=(w_(xm), w_(ym)) stands for a frequency vector of a twodimensional wave, r_(m) for amplitude of a two dimensional wave, q_(m)for its phase, i for an imaginary unit, and T for an operator forcreating a transposed vector and a transposed matrix. If there is notransposition operator T, an associated vector is treated as a columnvector. Otherwise, it is treated as a row vector. Therefore, inaccordance with the definition of the transposition operator T, w_(m)^(T)u stands for an inner product w_(m) ^(T)u=w_(xm)x+w_(ym) y. Since apixel value is a real number, an embedded pattern must be a real number.This means that there must be a backward wave. For convenience, letting−m be a backward wave with respect to m, the following relation is met.

w _(−m) =−w _(m) , r _(−m) =r _(m) , q _(−m) =q _(m)  (2)

Thus, equation (1) may be rewritten as follows:

P(u)=Σr _(m) cos(2p(w _(m) ^(T) u+q _(m)))  (3)

A linear transformation of the point u is expressed as follows:

u′=Au+b  (4)

Here, applying a geometrical transformation to an image I(u) for movingit to the point u′, a pixel value I′(u′) at this new pixel point u′ isgiven by the following equation.

I′(u′)=I(A ⁻¹(u′−b))=I(u)  (5)

Thus, an embedded pattern P′(u) in the transformed image is expressed asfollows:

P′(u′)=P(A ⁻¹(u′−b))  (6)

Here, let B be defined as follows:

B=(A ⁻¹)^(T)  (7)

Substituting equation (1) for P in equation (6), and getting a sum byusing w′_(m)=Bw_(m) in place of the original two dimensional wave numberw_(m), the following relation is met in the transformed image.

r′ _(m) =r(w _(m)), q′ _(m) =q _(m)−(Bw _(m))^(T) b  (8)

That is, even in the transformed image, the embedded pattern stillconsists of a set of two dimensional waves. Therefore, letting afrequency vector of a two dimensional wave in the embedded pattern bew_(m), and letting a frequency vector of a two dimensional wave in theextracted pattern from the transformed image be w′_(m), the followingrelation is met.

w′ _(m) =Bw _(m)  (9)

Determining the matrix B, it is possible to determine the coordinatetransformation A by using the inverse transformation of equation (7).This is the basic principle, part 1 of this invention.

A=(B ⁻¹)^(T)  (10)

Note that, as further described below, DFT (Discrete FourierTransformation) is used for extracting the frequency vector w′_(m) of anembedded two dimensional wave. This transformation may be expressed asfollows:

G(k)=Σ_(u) exp(−2πik _(T) u/N)P(u)  (11)

Here, N is a width of a domain where DFT is performed, and u=(x, y) forgetting a sum runs on a square domain with edges each comprising N pixelpoints, as expressed below.

 x=x _(o) , x _(o)+1, x _(o)+2, . . . , x _(o) +N−1

y=y _(o) , y _(o)+1, y _(o)+2, . . . , y _(o) +N−1  (12)

Since G(k) becomes a function of a period N with respect to each k_(x)and k_(y) of k=(k_(x), k_(y)), it is assumed here, for the sake ofexplanation, that G(k) will be calculated in a domain of grid points (aset of integer values) including an origin, as expressed below.

k _(x) =−N/2+1, −N/2+2, . . . 0, 1, 2, . . . N/2

k _(y) =−N/2+1, −N/2+2, . . . 0, 1, 2, . . . N/2  (13)

In order to see how each two dimensional wave is transformed by DFT,substituting a two dimensional wave exp(2πi(w^(T)u)) for P(u) inequation (11), this results in the following:

|G(k)|=|sin(Np(w _(x) −k _(x) /N))/sin(p(w _(x) −k _(x) /N))| |sin(Np(w_(y) −k _(y) /N)/sin(p(w _(y) −k _(y) /N))|  (14)

Equation (14) means that even if each component of a frequency vectorw=(w_(x), w_(y)) is not necessarily equal to a quotient of an integerdivided by the period N of DFT, it may be detected by the DFT usingapproximate values of k_(x)/N, k_(y)/N. When the value of k isapproximated to Nw, G(k) is maximized with respect to k. When w is on agrid point, i.e., when there exists k that satisfies a relation of k=Nw,the maximum value G(k)=N² is obtained there, whereas values at othergrid points are zeros. The maximum value of G(k) becomes least when w ison a diagonal of grid points, i.e., when there exists k that satisfies arelation of (k_(x)+1/2, k_(y)+1/2)=Nw. There, the maximum valueG(k)=(1/sin(p/2N))², approximately 0.4N², is obtained. As the gridpoints depart therefrom, the maximum value is gradually decreased inproportion to a reciprocal of a difference thereof. Also, in the DFT ofequation (11), by using the windowing function, as taught by S. M. Kayand S. L. Marple, Jr. in “Spectrum analysis—a modern perspective”, Proc.IEEE, Vol. 69, No. 11, pp. 1380-1419, 1981), (i.e., by inserting weightsfor correcting peripheral effects into equation (11)), it is possible tomake an improvement such that G(k) is significantly attenuated wheneverthe grid point k departs from the frequency vector Nw. Therefore, evenif FFT (Fast Fourier Transformation) is used by taking the width N ofDFT as being a power of 2, or rotation and/or scaling is performed as aresult of performing DFT, an approximate value of each two dimensionalwave of the embedded pattern appears in G(k) as a peak on a grid point.This is the basic principle, part 2 of this invention.

Creation of Embedding Pattern Consisting of Two Dimensional Waves

In case of creating an embedding pattern consisting of two dimensionalwaves, a two dimensional wave parameter set of the pattern defined byequations (1) and (3) (i.e., a frequency vector w_(m)) is selected andvalues of amplitude r_(m) and phase q_(m) are set up, thereby preventingthe pattern from being easily detected by a human eye and yet enabling aprogram to easily perform extraction of frequency vectors and/orcalculations of matrices for geometrical transformations.

As shown in FIG. 4, a frequency vector w_(m) of asymmetric distributionis generated in a pseudo-random manner, amplitude r_(m) of a twodimensional wave is set to have a magnitude adapted for preventingdetection by a human eye, and a phase q_(m) of the two dimensional waveis optimized so as to reduce the maximum value of absolute values |P(u)|of the embedding pattern on grid points. Automatically performing thisprocedure on a computer, it is possible to create the embedding patternin accordance with a key, and to use the embedding pattern consisting oftwo dimensional waves as an owner identifying mark or a categoryidentifier. Here, when distribution of frequency vectors has symmetry S,it means inevitable existence of m′ that satisfies the followingequation with respect to an arbitrary frequency vector w_(m) included inthe embedding pattern.

w _(m) ′=Sw _(m)  (15)

If there exists such symmetry S, and if the matrix B satisfies equation(9), a matrix BS comes to satisfy equation (9) as well by changing acorrespondence between an embedded frequency vector and an extractedfrequency vector. Because the embedding pattern is a real number, thereis no way to avoid the origin symmetry as expressed by equation (2),which necessarily leads to two solutions of matrices B and −B. However,other solutions may be avoided by intentionally breaking the symmetry indistribution of frequency vectors. Such breaking of the symmetry shouldbe established for a subset of the frequency vectors. This is becausetwo dimensional waves may be hidden by a periodic shade in an originalimage and/or they may be destroyed by image processing other than ageometrical transformation and, hence, frequency vectors of all of thetwo dimensional waves may not be necessarily extracted from the image.For this reason, it is useful to exploit a technique for creatingfrequency vector distribution that breaks the symmetry by means ofintroduction of randomness. This randomness is important for preventinga number of points from being haphazardly aligned on x axis or y axis atthe time of rotation. More particularly, such randomized frequencyvector distribution may be created as detailed below.

Global Random Distribution Creating Method

As shown in FIG. 5, a domain of frequency vectors (e.g., a square domainincluding an origin) is initially defined, frequency vectors arerandomly generated and, then, in order to cause respective frequencyvectors to be separated by more than a predetermined distance, if it isdetermined that there exists any sets of closer frequency vectors, anoperation for causing such to frequency vectors to be moved in oppositedirections is continued for all of the sets until frequency vectorsthereof are caused to be separated by the predetermined distancerespectively. At step 520 in FIG. 5, frequency vectors are randomlygenerated from the number of frequency vectors by using a pseudo-randomnumber. At step 540, it is determined if the frequency vectors areseparated from each other by more than a predetermined distance; and, ifnot, at step 530, any sets of closer frequency vectors are moved inopposite directions respectively, thereby to cause respective frequencyvectors to be separated by more than the predetermined distance.Continuing such operations until frequency vectors of all sets arecaused to be separated by the predetermined distance, at step 550,frequency vectors of asymmetric distribution may be obtained.

Cellular Random Distribution Creating Method

As shown in FIG. 6, at step 610, a domain in which each one of thefrequency vectors to be entered is initially defined, at step 620, thefrequency vectors are randomly generated in the domains and, then atstep 640, if it is determined that sets of frequency vectors in theneighboring domains are closer than a predetermined distance, at step630, they are moved in opposite directions, thereby to cause therespective sets of frequency vectors in the neighboring domains to beseparated by more than the predetermined distance. In this way, at step650, frequency vectors of asymmetric distribution may be obtained. Ifthose domains in which respective frequency vectors are to be enteredare separated from each other at the outset, it is possible to eliminatestep 630 for causing the frequency vectors to be separated by, more thanthe predetermined distance. FIG. 9 shows an example of distribution offrequency vectors created in accordance with the cellular randomdistribution creating method. As shown in this drawing, the center isthe origin and 128 frequency vectors are randomly distributed.

Spiral Random Distribution Creating Method

As shown in FIG. 7, at step 720, frequency vectors are randomlygenerated in sequence on a certain side such that distances from theorigin are increased. Then, at steps 740 and 730, setting up thedistance from the immediately preceding frequency vector and anincrement of the distances from the origin to be within certain rangesrespectively, frequency vectors are randomly generated. FIG. 11 shows anexample of distribution of frequency vectors created in accordance withthe spiral random distribution creating method. As shown in thisdrawing, the center is the origin and 86 frequency vectors are randomlydistributed.

In order to cause the embedded pattern to be invisible to a human eye,r_(m) in equations (1) and (3) are rendered to have a small value. Morespecifically, r_(m) is rendered to have a constant value, anapproximately constant value, or such a value that is graduallyincreased as approaching closer to the origin. To take a greater valueas approaching the origin is due to a factor that when a natural imageis subjected to DFT, a smaller wave number has, in general, higherspectral power. When two dimensional waves are extracted from theembedded image, it is possible to make use of the characteristic that apossible range of amplitude r_(m) of two dimensional waves is limited.Even if a frequency vector w_(m) and amplitude r_(m) of a twodimensional wave are determined, the magnitude of P(u) in equations (1)and (3) may vary depending on phase q_(m) of a two dimensional wave. Inorder to cause the maximum value of |P(u)| on integer u to become aminimum, it is optimized with respect to its phase q_(m).

FIG. 8 shows a presentation example of a pattern in a real domain, whichconsists of 128 two dimensional waves. Its shading is somewhatemphasized such that it is visible to a human eye. In a real domain, apattern consisting of a number of two dimensional waves may be seen asnoises only even if it is visible at all. FIG. 9 shows an example of itspattern subjected to DFT. As shown in this drawing, the center is theorigin and white points are individual two dimensional waves. FIG. 10shows an image that is obtained by applying DFT to the same imagerotated by 30 degrees. It can be seen from this drawing that the centeris the origin and the image transformed by DFT is rotated as well. Anygeometrical transformation, including rotation and/or scaling, appliedto the image is reflected in the DFT image too.

Embedding

FIG. 12 shows a procedure for embedding a pattern consisting of twodimensional waves in an image. Embedding is performed while degradationof image quality is controlled in a real domain. Pattern P(u),consisting of a set of two dimensional waves, is previously calculatedon an array, and, at such an intensity level that is invisible orsubstantially insensitive to a human eye, values of the array are addedto or subtracted from each pixel value of the image. When it is desiredto cause this pattern consisting of two dimensional waves to coexistwith an embedded pattern in accordance with another method, the formerpattern (which is rarely destroyed by embedding of another) may beembedded prior to that of latter fragile pattern of digital watermarks.

While the pattern consisting of two dimensional waves may be directlyembedded in an image by calculating equation (3) at each point of theimage, nevertheless it is better in terms of a lighter calculation loadto give periodicity to the embedding pattern P(u), to previouslycalculate on an array alone that has a size of the period and to add itsvalue to each pixel point of the image. With respect to positiveintegers N_(x) and N_(y), let each frequency vector w_(m)=(w_(xm),w_(ym)) be taken at its grid point as expressed below.

w _(xm) =k _(xm) /N _(x) , w _(ym) =k _(ym) /N _(y)  (16)

Here, k_(xm) and k_(ym) are integers. In this case, P(U) has a periodN_(x) in the x axis direction and a period N_(y) in the y axisdirection. Thus, P(u) is calculated on an array of N_(x) (width) andN_(y) (height), thereby repetitively using its value. Equation (16) maybe rewritten as follows:

w _(xm)=(2k _(xm)+1)/2N _(x)

w _(ym)=(2k _(ym)+1)/2N _(y)  (17)

In this case, P(u) has a period 2N_(x) in the x axis direction and aperiod 2N_(y) in the y axis direction.

However, inverting a sign for each half of the periods N_(x), N_(y).i.e., n=(N_(x), N_(y)), the following equation is obtained.

P(u+n)=−P(u)  (18)

In this case, P(u) is similarly calculated on an array of N_(x) (width)and N_(y) (height), thereby repetitively using its value withaccompanied sign inversion as the case may be.

When pattern P(u) is added to each pixel, it is weakly embeddeddepending on the characteristics of an image around its pixel point.That is, as expressed in the following equation, α is rendered to have asmall value in a domain where pixel values are smoothly changed.

I′(u)=I(u)+αP(u) where 0≦α≦1  (19)

Extraction of Two Dimensional Waves and Calculation of Linear CoordinateTransformation

As shown in FIG. 13, a procedure for determining a linear coordinatetransformation applied to an image, which contains an embedded patternconsisting of a set of two dimensional waves therein, is formulated asstated below.

<1> At step 1320, DFT is applied to the image, the resultant image G(k)is subjected to image processing, and a set of frequency vectors{w′_(m)} of two dimensional waves is extracted.

<2> At step 1330, a portion of correspondences between the extractedfrequency vectors and the embedded frequency vectors is initialized (toprovide correspondences).

<3> At step 1340, based on the initialized correspondences, a matrix Bthat is to minimize the following equation of a mean-square-error isdetermined.

d(B)=(1/M)Σ|w′ _(m) −Bw _(m)|²  (20)

Alternatively, a matrix B that is to minimize the following equation ofa mean-square-error may be determined.

d(B)=(1/Σr _(m))Σr _(m) |w′ _(m) −Bw _(m)|₂  (21)

Here, M stands for the number of frequency vectors. If, in equation(21), weights r_(m) are not the same, it is equivalent to equation (20).

<4> At step 1350, if d(B) is larger than a predetermined value,correspondences of frequency vectors are set up again before returningto step 1340. Otherwise, the number of correspondences between theextracted frequency vectors and the embedded frequency vectors isincreased before returning to step 1340. If all of the correspondencesare set up and if d(B) is smaller than the predetermined value, linearcoordinate transformation A (i.e., geometrical transformation matrix) isobtained at step 1360 in accordance with the following equation.

A=(B ⁻¹)^(T)  (22)

In the linear coordinate transformation A so obtained, there isindeterminacy of A or −A. Further, in an application of digitalwatermarks, when it is desired to extract information embedded inaccordance with a method other than that of this invention, it may benecessary to determine a parallel translation's amount b of equation(4). That is, the following procedure may be required.

<5> At step 1370, a parallel translation's amount b is determined usingphase of the extracted two dimensional waves, and/or such a paralleltranslation's amount b that maximizes detection reliability ofinformation embedded in accordance with another method is searched for.

The details of 1-5 will now be described in greater detail.

<1> Extraction of Two Dimensional Waves

FIG. 14 shows a DFT image of an image, which contains an embeddedpattern consisting of two dimensional waves therein. Any difference fromthe DFT image of two dimensional wave pattern shown in FIG. 9 is causedby each original image. As suggested in FIG. 14, for the purpose ofextracting the embedded two dimensional waves, it is necessary toappropriately process the DFT image of a transformed image.

FIG. 15 shows a procedure for extracting a set of frequency vectors {w′}of the embedded two dimensional waves from the transformed image inaccordance with this invention.

(1) At step 1520, DFT or FFT is performed in a plurality of domains ofan image, and powers |G(k)| of the resultantly transformed image G(k)are summed together.

(2) At step 1530, from the image G_(sum)(k) that is obtained by thesummation, larger points having greater values than the peripheralpoints are selected.

(3) At step 1540, the maximum value of the peripheral points issubtracted from a value of each of the selected points and, if adifference is less than zero, this value is discarded. On the otherhand, if a difference is positive, then the selected points are arrangedin a descending (large-small) sequence of their respective positivedifferences.

(4) At step 1550, if any of the selected points is the origin itself orit is very close to the origin, or if G_(sum)(k) of such a point is fargreater than G_(sum)(k) of the remaining points, these points will beeliminated, thereby to extract frequency vectors that are less than innumber than those embedded two dimensional waves arranged in thedescending sequence at step 1530.

As already described above in connection with the principles of thisinvention, from the condition that a pixel value is a real number, itfollows that the powers |G(k)| of the resultant DFT image, a set ofembedding frequency vectors, as well as a set of the extracted frequencyvectors are symmetric about the origin. Therefore, by making use of thisorigin symmetry, summation of powers of the transformed image at step1520 and/or a searching extent at step 1530 may be reduced to one half.Also, saving of storage areas of a set of the embedding frequencyvectors, as well as a set of the extracted frequency vectors may bereduced to one half. A width of a domain for DFT at step 1520 may not benecessarily the same as a width of an array or period for P(U) at thetime of embedding. A larger width of a DFT domain results in animprovement of separation from the original image at the time ofextraction and/or calculation accuracy of the matrix B in equation (9).Using the windowing function in connection with DFT, it is possible toobtain a sharper image. Peripheral points obtained at step 1530 may notbe necessarily the same as peripheral points obtained at step 1540. Step1530 is used for selecting the locally largest point, whereas step 1540is used for confirming a fact that a given point is larger than theothers is not accidental but intentional. Such a fact is confirmed by ademonstration that the given point is far more larger than itsperipheral points. As expressed in equation (14) associated with thebasic principle, part 2 of this invention, if frequency vectors are noton grid points of DFT (w_(x)=k_(x)/N, w_(y)=k_(y)/N), they will appearas an image at consecutive grid points. Therefore, a better result willbe obtained if the peripheral points obtained at step 1540 are limitedto those neighborhood points except for immediately neighboring points.

<2> Setting Up of Correspondences Between Embedded Two Dimensional Wavesand Extracted Two Dimensional Waves

Assuming that M′ stands for the number of extracted frequency vectorsand M for the number of embedded frequency vectors, the number-ofpossible correspondences is M!/(M−M′)!. Also, the extracted frequencyvectors include fakes due to an original image, the number of suchcombinations is further increased. Therefore, it becomes critical toefficiently set up correspondences between the extracted frequencyvectors and embedded frequency vectors. If geometrical processingapplied to an image includes rotation, inversion, and scaling only, thelarge-small sequence of frequency vectors will not be changed by thetransformation matrix B. However, saving of the large-small relations ofthe frequency vectors is merely an approximate one. On the other hand,with respect to the frequency vectors that are corresponded with eachother by the transformation matrix B, the following relation isaccurately satisfied subject to a condition that an error occurring atthe time of a geometrical transformation is ignored.

det(w′ _(m) w′n)=β det(w _(m) wn)  (23)

Here, det( ) stands for a determinant. That is,det(ab)=a_(x)b_(y)−a_(y)b_(x), and β is a constant defined by β=det(B).This relation is clear from the following equation. $\begin{matrix}\begin{matrix}{{{\det \quad \left( {w_{m}^{\prime}\quad w^{\prime}n} \right)} = {\det \quad \left( {B\quad w_{m}\quad B\quad {wn}} \right)}}\quad} \\{= {\det \quad \left( {B\quad \left( {w_{m}\quad {wn}} \right)} \right)}} \\{= {\det \quad (B)\quad \det \quad \left( {w_{m}\quad {wn}} \right)}}\end{matrix} & (24)\end{matrix}$

Using the relation of equation (23), it is possible to efficientlydetermine correspondences, as described below with reference to FIG. 16or FIG. 17. It is assumed here for either method that a set of embeddedfrequency vectors {w} and a set of extracted frequency vectors {w′} aresaved in a storage area as far as their halves being symmetric about theorigin are concerned.

Large-Small Relation Method

As shown in FIG. 16, with respect to a set of embedded frequency vectors{w} and a set of extracted frequency vectors {w′}, their frequencyvectors are arranged in the large-small sequence respectively and, then,correspondences therebetween are increasingly expanded. Moreparticularly, at step 1620, the set of extracted frequency vectors andthe set of embedded frequency vectors are arranged in their large-smallsequence. At step 1630, from the set of extracted frequency vectors,each respective one of the frequency vectors is taken out in theirarranged sequence and this is referred to as w_(m)′. Concurrently, withrespect to either one of determinants det(w′_(m−2)w′_(m)) ordet(w′_(m−1)w′_(m)) which has a larger absolute value, a sign of w_(m)′is selected such that the determinant has a positive value. At step1640, from the set of extracted frequency vectors {w} that are notcorresponded, one of the frequency vectors is taken out in theirarranged sequence and this is referred to as w_(m). Concurrently,corresponding with the selection of a sign at step 1630, a sign of w_(m)is selected such that either one of the determinants det(w_(m−2)w_(m))or det(w_(m−1)w_(m)) has a positive value. At step 1650, with respect tom frequency vectors that are provided with correspondences therebetween,a mean-square-error (equation (20) or (21)) is determined by a method tobe described in the next section and, then, it is tested to see if theerror is sufficiently small. If so, the process proceeds to step 1670.Otherwise, at step 1660, another untested one of the embedded frequencyvectors is taken out, which is referred to as w_(m), a sign of w_(m) isadjusted in line with the sign of w_(m)′ similarly to step 1640, and theprocess proceeds to step 1650 again. If there is no such untested one ofthe embedded frequency vectors any longer, then w_(m)′ is regarded as afaked one of the embedded frequency vectors and it is eliminated fromthe correspondences. At step 1670, if all of the extracted frequencyvectors are taken out, and if the number of corresponded frequencyvectors reaches to a predetermined number, then the process isterminated at step 1680. If not reached, selections of w₁′, w₂′ arechanged by a predetermined number of attempts, and the process returnsto 1630.

<Decomposition Method>

First, a linear combination is defined as follows:

w _(m) =C _(m1) w ₁ +C _(m2) w ₂  (25)

Decomposition means to express a frequency vector by using other twofrequency vectors and the above coefficients (C_(m1), C_(m2))). Thesecoefficients may be determined as follows by using the above describeddeterminants.

C _(m1)=det(w _(m) w ₂)/det(w ₁ w ₂)

C _(m2)=det(w ₁ w _(m))/det(w ₁ w ₂)  (26)

Thus, the corresponding embedded frequency vectors and extractedfrequency vectors have the same decomposition coefficients respectively.

FIG. 17 shows a method of creating correspondences by using thedecomposition coefficients. Initially, at step 1720, with respect to aset of extracted frequency vectors {w′_(m)} and a set of embeddedfrequency vectors {w}, determinants det(w′_(m)w′n) and det(w_(m)wn) arecalculated respectively. At step 1730, from the set of extractedfrequency vectors {w′} and the set of embedded frequency vectors {w},two frequency vectors {w′₁, w′₂} and {w₁, w₂} are selected in thedescending order of the determinants' absolute values that have beencalculated at step 1720. Signs of w′₂ and w₂ are taken such that thedeterminants have a positive value. At step 1740, using the selected{w′₁, w′₂} and {w₁, w₂}, the extracted frequency vector w′_(m) and theembedded frequency vector w_(m) are decomposed by using equation (26).At step 1750, the decomposition coefficients are compared with eachother to determine a correspondence between the extracted frequencyvector w′_(m) and the if embedded frequency vector w_(m). For example,each of the embedded frequency vectors is corresponded with an extractedone of the frequency vectors that has the closest decompositioncoefficient. If this causes a plurality of embedded frequency vectors tobe corresponded with the same one of the extracted frequency vector, theone having the closest decomposition coefficient is selected ascorrespondence. At step 1760, correspondences between the frequencyvectors so obtained are confirmed by using a square-error and, then, thenumber of the confirmed correspondences are counted. For example, whilethe number of corresponding pairs is caused to be sequentiallyincreased, a least mean-square-error (equation (20) or (21)) isdetermined by a method to be described in the next section and, if it islarge, the present correspondence is discarded. Otherwise, thiscorrespondence is left as a valid correspondence. If, at step 1770, itis determined that the number of valid correspondences reaches to apredetermined number, and if a mean-square-error is small, the processis terminated at step 1780. If not reached, selections of {w′₁, w′₂} and{w₁, w₂} are changed by a predetermined number of attempts, and theprocess returns to step 1730.

<3>, <4> Calculation of Linear Coordinate Transformation FromCorrespondences of Two Dimensional Waves

Due to resampling of an image (in case of rotation, scaling, and thelike) as well as a quantization width (in case of extraction), frequencyvectors extracted from an image may contain random noises as expressedin the following equation.

w′ _(m) =Bw _(m)+random noise  (27)

Therefore, as provided in equation (20) or (21), by using the lineartransformation matrix B for minimizing a mean-square-error or a sumbetween the embedded frequency vectors that have been linearlytransformed and the extracted frequency vectors, B of equation (9) isdetermined. Letting a width of a DFT domain be N, a quantization widthis equal to 1/N. Thus, letting the quantization width of DFT be largerthan the effect of resampling, a condition for discarding an assumedcorrespondence is met whenever a mean-square-error that has beenminimized with respect to B satisfies the following equation.

d(B)>(1/N)²  (28)

Because equation (20) is regarded as a special case of equation (21),described below is a procedure for calculating the matrix B that is tominimize equation (21). Let matrices S and V be defined as follows:

S=Σ _(m) r _(m) w _(m) w _(m) ^(T)  (29)

V=Σ _(m) r _(m) w′ _(m) w _(m) ^(T)  (30)

In this case, the linear transformation matrix B for minimizing equation(21) may be determined by the following equation.

B=VS ⁻¹  (31)

Here, b a^(T) is a matrix that has the following components in line withthe definition of the transposition operator T. $\begin{matrix}{b_{x}\quad a_{x}} & {b_{x}\quad a_{y}} \\{b_{y}\quad a_{x}} & {b_{y}\quad a_{y}}\end{matrix}$

For simplicity, proof of the above equation is not detailed herein.

<5> Calculation of Parallel Translation's Amount

Once the transformation matrix B is determined, the paralleltranslation's amount b may be determined by embedding/extraction of apattern consisting of two dimensional waves, or by round-robin attemptsto extract digital watermarks with shifting positions thereof.

Method of Using Phase of Pattern Consisting of Two Dimensional Waves

Based on equation (8) that expresses a relation between a phase of anextracted two dimensional wave and a phase of an embedded twodimensional wave, it is possible to determine a parallel translation'samount b. However, because a measured amount directly obtained from animage is a DFT image G(u), there remains uncertainties in phase q′_(m)by a factor of multiples of 2p. Also, individual phase q′_(m) isdistorted by two dimensional waves due to an original image at the timeof embedding. Therefore, a parallel translation's amount b is determinedby the following procedure:

(1) Phase q′_(m) of an extracted two dimensional wave, whosecorrespondence has been established, and its reliability p_(m) aredetermined from a DFT image. Reliability is determined by usingdifferences of values from peripheral points.

(2) With respect to a parallel translation's amount b, the followingequation is to be minimized.

E(b)=Σ_(m) p _(m){1−cos(2p(q _(m) −q′ _(m) −w′ _(m) ^(T) b))}=Σ_(m) p_(m)2 sin 2(p(q _(m) −q′ _(m) −w′ _(m) ^(T) b))  (32)

E(b) stands for a weighted sum of phase deviations or displacement on acomplex plane. In order to reduce a calculation load, equation (32) issimplified by approximation for accelerating calculation, or usingphases of a small number of reliable two dimensional waves to reduce thenumber of candidates in equation (32), thereby to minimize equation (32)using phases of all of the two dimensional waves established aroundthese candidates.

Method of Maximizing Separation Between Signal and Noise

It is assumed here that the transformation matrix B is determined usinga pattern of two dimensional waves and that geometrical transformations,such as rotation and scaling of an image other than paralleltranslation, have been corrected. Parallel translation's amount b may bedetermined by round-robin attempts to extract digital watermarks withshifting positions thereof, without using phases of two dimensionalwaves. Essential points of this case reside in that a table is used forreducing calculation amounts in carrying out the round-robin attempts,and that a criterion for determining the best parallel translation'samount becomes important.

It is assumed here that, because of robustness to clipping, digitalwatermarks for embedding multi-bit information are periodically embeddedin an image in a form of the same pattern. It is also assumed that acalculation mechanism, having pixel values of a block (square domain) asits inputs, is controlled by a key and that one bit is detecteddepending on a sign of its output sum. In this case,. the earliestparallel translation's amount is determined by the following procedure:

(1) With respect to each pixel point of a domain surrounded by a period,such a square domain having the said pixel point as an end point ispreviously input to the calculation mechanism for determining its valuef(u, k) and putting the value into a table. Here, u stands for aposition of a pixel point, and k stands for a block pattern. determinedby the key.

(2) With respect to each pixel point of a domain surrounded by a period,the said pixel point is deemed to be a reference point of the key, thefollowing equation is calculated based on the table created inaccordance with the procedure (1), and the largest pixel point is deemedto be a reference point of the key.

S _(u) M(f(u, k _(u)))  (33)

Here, u stands for a value on the table that corresponds to a bit. Mstands for a function for separating a signal from a noise, which isexpressed by the following equation.

M(x)=log(|x|+a)  (34)

Or, it may be an approximation function of equation (34). If a referencepoint of the key is correctly selected, a bit is given by a sign of f(u,k_(u)). Since a value of a bit is not known to a detection device, it isnot determinable whether it is positive or negative. However, a valuethat is far from an expected value zero of a noise would have beenembedded in bit information. Therefore, it is effective to use such afunction that emphasizes a difference from a noise. That is, M(x)=|x| ismore effective than M(x)=x², whereas M(x)=log(|x|+a) is more effectivethan M(x)=|x|. Parameter a is added such that there is no singularity atx=0. Since the logarithmic function has a larger calculation load, anincreasing function for emphasizing a difference from zero, for example,the following equation is used as an approximation function.

M(x)=−1/(|x|+a)  (35)

Or,

M(x)=−1/(|x| ² +a)  (36)

Hardware Embodiment

Now, with reference to the drawings, we will describe a hardwareembodiment for performing embedding of two dimensional waves,geometrical transformation identification of an image, geometricalcorrection, and digital watermarking in accordance with this invention.In FIG. 18, there is schematically shown a hardware configuration of asystem 100 used in this invention. The system 100 includes a centralprocessing unit (CPU) 1 and a memory 4. CPU 1 and the memory 4 areconnected to a hard disk drive 13 as an auxiliary storage device (oranother storage medium drive such as a CD-ROM drive 26 or a DVD drive32) via a bus 2 and an IDE controller 25. Similarly, CPU 1 and thememory 4 are connected to a hard disk drive 30 as an auxiliary storagedevice (or another storage medium drive such as an MO drive 28, a CD-ROMdrive 29 or a DVD drive 31) via the bus 2 and a SCSI controller 27. Afloppy disk drive 20 is connected to the bus 2 via a floppy diskcontroller 19. Preferably, an image subject to said embedding andcreated two dimensional waves are stored into an appropriate storagemedium drive such as the hard disk drive 30, CD-ROM drive 29 or DVDdrive 31, for loading them. into the memory 1 and for processingtherein. Also, an embedded image and a geometrically corrected image arepreferably stored into said storage medium drive.

A floppy disk inserted into the floppy disk drive 20, the hard diskdrive 13 (or another medium such as an MO, CD-ROM or DVD) and/or a ROM14, is capable of storing a computer program code or data for practicingthis invention. At the time of execution, this computer program code isloaded into the memory 4 such that it cooperates with an operatingsystem to provide instructions to CPU or the like. This computer programcode may be compressed or divided into a plurality of segments forstoring onto a plurality of media. Also, the system 100 may be providedwith user interface hardware, including a pointing device (such as amouse or a joystick) 7 or a keyboard 6 for input entry, as well as adisplay 12 for presenting visual data to a user. Also, a printer and amodem may be connected via a parallel port 16 and a serial port 15respectively. This system 100 may be connected to a network via theserial port 15 and a modem or a communication adapter 18 (Ethernet ortoken ring card) for communicating with other computers. Also, a remotetransceiver may be attached to the serial port 15 or the parallel port16 for transmitting/receiving image data by means of infrared rays orradio. When it is desired to capture an externally provided originalimage into this system 100, an image input device (digital camera,scanner, digital video camera or the like) may be connected to theserial port 15, parallel port 16 or SCSI controller 27. Additionally, astorage medium such as a floppy disk or CD-ROM may be used, or it may becreated by the user interface hardware of this system 100.

A speaker 23 receives audio signals that are D/A (digital/analog)converted by an audio controller 21 via an amplifier 22, and outputs theaudio signals as sounds. Also, the audio controller 21 may perform anA/D conversion of audio information received from a microphone 24,thereby to capture the external audio information into the system. Itwill be readily understood from the foregoing that the system of thisinvention may be implemented by a communication terminal havingcommunication functions, including a conventional personal computer(PC), a workstation, a notebook PC, a palm top PC, a network computer, acomputer incorporated into a variety of household electric appliancessuch as a TV set, a game machine having communication functions, atelephone set, a FAX machine, a portable telephone set, a PHS, anelectronic organizer or the like, and any combinations thereof. Note,however, that these elements are listed for exemplification purposeonly, and all of these elements are not necessarily equated withessential elements of this invention.

In FIG. 2, there is shown a digital watermarking system havingrobustness to geometrical transformation, which is configured bycombining a geometrical correction system of this invention with aconventional watermarking technique. After embedding a predeterminedpattern consisting of two dimensional waves and created at block 210 inan original image 220 at block 230, digital watermarks are embedded atblock 240. An embedded image 250 created in this way is subjected toapplication of a geometrical transformation due to some factors, therebyto form a transformed image 260. Using this transformed image 260 as aninput, embedded two dimensional waves are extracted at block 270. In sodoing, the applied geometrical transformation is calculated and, atblock 280, this image is geometrically corrected to regenerate theoriginal image. Then, at block 290, the digital watermarks are detected.As described, a method of this invention, being adapted forintentionally embedding and extracting asymmetric two dimensional waves,functions independently of digital watermarking and, thus, it becomespossible to accurately and rapidly detect a geometrical transformationapplied to the original image even where an image having digitalwatermarks embedded therein is subjected to clipping, rotation, scaling,anisotropic scaling, and the like. In other words, it is possible toprovide geometrical correction that has very high affinity orcompatibility with the digital watermarking techniques.

FIG. 3 shows an embodiment, wherein this invention is applied to controlan orientation of a printed material. At block 310, a two dimensionalwave pattern is created. At block 330, this is embedded in an originalimage 320, orientation of which is to be desirably controlled. At block340, the image that has the two dimensional wave pattern embeddedtherein is printed. After the printed material is rotated and moved, atblock 370, the embedded two dimensional waves are extracted from anoutput of an image reader such as a digital video camera and ageometrical transformation is calculated. Based on this, at block 380,the printed material is rotated and moved to a desired direction,thereby to control its orientation and position. Replacing the digitalvideo camera with another device such as a CCD sensor, and detecting twodimensional waves from the image in a real-time manner, it becomespossible to automatically control an orientation and a position of amanufacture on a factory's belt conveyor. In such a case, the printedmaterial may be a three dimensional object that has an image affixedthereto so far as the image has two dimensional waves embedded therein.Alternatively, it is also possible to embed the inventive twodimensional waves in the object itself.

By way of example, in a situation where a manufacturing process requiresaccurate position control of a manufacture piece (object), the inventivetwo dimensional waves are directly embedded in a surface of themanufacture piece. In case of performing position control, a geometricaltransformation is calculated from an image outputted by a digital cameraor the like, thereby allowing the desired position control to beaccurately carried out. Note that the position control in this case iscapable of coping with rotation, scaling, anisotropic scaling, paralleltranslation and the like. Further, even where the object that has twodimensional waves embedded therein is geometrically deformed due to anychanges in an external environment (e.g., temperature, humidity, and thelike), it becomes possible to perform position control the object.

As described above, in accordance with this invention, it is possible toeasily and rapidly identify geometrical transformations applied to animage in a accurate manner without using its original image. Also, it ispossible to provide a method and system for embedding two dimensionalwaves in an image, thereby to easily control invisibility and/ordegradation of image quality. Also, it is possible to provide a methodand system that are capable of detecting geometrical transformationsapplied to an original image even where an image including digitalwatermarks is subjected to clipping, rotation, scaling, anisotropicscaling, and the like.

Further, even if a digital watermarking image that has the inventive twodimensional waves embedded therein is artificially subjected to ageometrical transformation in a distribution process, or it is subjectedto a mechanical geometrical transformation by a scanner, FAX machine orthe like, it is still possible to identify such a geometricaltransformation and correct it, thereby to regenerate the digitalwatermarking image. That is, it is possible to provide a technical meansadapted for use in copyright protection, thereby facilitatingdistribution of digital contents.

The invention has been described with reference to several is specificembodiments. One having skill in the relevant art will recognize thatmodifications may be made without departing from the spirit and scope ofthe invention as set forth in the appended claims.

Having thus described our invention, what we claim as new and desire tosecure by Letters Patent is:
 1. A two dimensional wave embedding systemfor embedding two dimensional waves in an image to identify at least onegeometrical transformation which has been applied to the image,comprising: (a) means for storing the image into a storage means; (b)means for generating and storing at least one pattern, consisting of aset of asymmetric two dimensional waves identifying the at least onegeometrical transformation, into the storage means; and (c) means forembedding said pattern of a set of asymmetric two dimensional wavesidentifying the at least one geometrical transformation which has beenapplied to the image in said stored image in a real domain.
 2. Theembedding system of claim 1, wherein said embedding system comprises adigital watermark embedding system and further comprises means foradditionally embedding digital watermarks in said image that has saidpattern embedded therein.
 3. The system as set forth in claim 2 whereinsaid means for embedding said pattern is arranged to prevent degradationof image quality while embedding said pattern in the real domain.
 4. Thesystem as set forth in claim 1 wherein said means for embedding saidpattern is arranged to prevent degradation of image quality whileembedding said pattern in the real domain.
 5. A position correctingpattern embedding system, comprising: (a) means for storing an image ofan object into a storage means; (b) means for generating and storing atleast one pattern, consisting of a set of asymmetric two dimensionalwaves representing correct positioning of said object, into the storagemeans; (c) means for embedding said pattern comprising a set ofasymmetric two dimensional waves representing correct positioning ofsaid object in said stored image in a real domain; and (d) means forembedding said image, which has said pattern embedded therein, in saidobject.
 6. The system of claim 5 wherein said embedding said imagecomprises printing said image.
 7. The system as set forth in claim 6wherein said means for embedding said pattern is arranged to preventdegradation of image quality while embedding said pattern in the realdomain.
 8. The system as set forth in claim 5 wherein said means forembedding said pattern, is arranged to prevent degradation of imagequality while embedding said pattern in the real domain.
 9. Ageometrical transformation identifying system for extracting twodimensional waves from an image that has said two dimensional wavesembedded therein to identify at least one geometrical transformationwhich has been applied to the image, comprising: (a) means foridentifying and extracting said two dimensional waves, identifying atleast one geometrical transformation which has been applied to theimage, embedded in said image that is stored in a storage means; (b)means for comparing predetermined asymmetric two dimensional waves withsaid extracted two dimensional waves; and (c) means, responsive to aresult of said comparison, for calculating at least one of a pluralityof linear coordinate transformations applied to the image, saidplurality of linear coordinate transformations including a scalingfactor, a rotational angle, an inversion, an anisotropic scaling factor,and a parallel translation's amount.
 10. The system of claim 9 furthercomprising means for geometrically correcting said image by using saidat least one calculated linear coordinate transformation.
 11. The systemof claim 10 further comprising means for extracting digital watermarksfrom said image that has been subjected to said geometrical correction.12. The system of claim 9 further comprising means for performingposition control of the object that has said image by using said atleast one calculated linear coordinate transformation.
 13. The system ofclaim 9 wherein said means for calculating at least one of a pluralityof linear coordinate transformations is adapted to simultaneouslycalculate all of said plurality of linear coordinate transformationsapplied to said image.
 14. A method of embedding two dimensional wavesin an image for identifying at least one geometrical transformationwhich has been applied to the image, comprising the steps of: (a)storing the image into a storage means; (b) generating and storing atleast one pattern, consisting of a set of asymmetric two dimensionalwaves identifying said at least one geometrical transformation, into thestorage means; and (c) embedding said generated pattern comprising a setof asymmetric two dimensional waves identifying said at least onegeometrical transformation into said stored image in a real domain. 15.The method of claim 14 further comprising additionally embedding digitalwatermarks in said image that has said pattern embedded therein.
 16. Amethod of extracting two dimensional waves from an image that has saidtwo dimensional waves embedded therein to identify at least onegeometrical transformation which has been applied to the image,comprising the steps of: (a) identifying and extracting said twodimensional waves embedded in said image that is stored in a storagemeans said two dimensional waves identifying at least one geometricaltransformation which has been applied to the image; (b) comparingpredetermined asymmetric two dimensional waves with said extracted twodimensional waves; and (c) responsive to a result of said comparison,calculating at least one of a plurality of linear coordinatetransformations, said plurality of linear coordinate transformationsincluding a scaling factor, a rotational angle, an inversion, ananisotropic scaling factor, and a parallel translation's amount, appliedto the image.
 17. The method of claim 16 further comprising the stepsof: (d) geometrically correcting said image by using said calculatedlinear coordinate transformation; and (e) extracting digital watermarksfrom said image that has been subject to said geometrical correction.18. A medium for storing a program that is adapted for embedding twodimensional waves in an image to identify at least one geometricaltransformation which has been applied to the image, wherein the programcomprises: (a) a function for storing the image into a storage means;(b) a function for generating and storing at least one pattern,consisting of a set of asymmetric two dimensional waves, into thestorage means; and (c) a function for embedding said pattern comprisinga set of asymmetric two dimensional waves in said stored image in a realdomain.
 19. The medium of claim 18 wherein said program furthercomprises a function for additionally embedding digital watermarks insaid image that has said pattern embedded therein.
 20. A medium forstoring a program that is adapted for extracting two dimensional wavesfrom an image that has said two dimensional waves embedded therein toidentify at least one geometrical transformation which has been appliedto the image, wherein the program comprises: (a) a function foridentifying and extracting said two dimensional waves embedded in saidimage that is stored in a storage means, said two dimensional wavesidentifying at least one geometrical transformation which has beenapplied to the image; (b) a function for comparing predeterminedasymmetric two dimensional waves with said extracted two dimensionalwaves; and (c) a function, responsive to a result of said comparison,for calculating at least one of a plurality of linear coordinatetransformation, said plurality including a scaling factor, a rotationalangle, an inversion, an anisotropic scaling factor, and a paralleltranslation's amount, applied to the image.
 21. The medium of claim 20wherein the program further comprises: (d) a function for geometricallycorrecting said image by using said calculated linear coordinatetransformation; and (e) a function for extracting digital watermarksfrom said image that has been subjected to said geometrical correction.